package com.dhcc.bpm.modules.scf.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dhcc.bpm.modules.scf.dto.ScfDriverInfoDTO;
import com.dhcc.bpm.modules.scf.entity.ScfDriverInfo;
import com.dhcc.bpm.modules.scf.vo.ScfDriverInfoVO.ScfGetDriverDetailsVO;
import com.dhcc.bpm.modules.scf.vo.ScfDriverInfoVO.ScfGetDriverListVO;
import org.springframework.stereotype.Repository;

import java.util.Date;
import java.util.List;


/**
 * 司机信息-Mapper接口
 */
@Repository
public interface ScfDriverInfoMapper extends BaseMapper<ScfDriverInfo> {
    /**
     * 查询司机信息列表
     *
     * @param page
     * @param scfDriverInfo
     * @return
     */
    List<ScfGetDriverListVO> selectScfDriverInfoPage(IPage<ScfGetDriverListVO> page, ScfDriverInfoDTO scfDriverInfo);

    /**
     * 查询司机详细信息
     *
     * @param scfDriverInfo
     * @return
     */
    ScfGetDriverDetailsVO getDetails(String rowId);

    /**
     * 更新司机信息是否有效
     *
     * @return
     */
    void updateIsVariable(Date currentDate);

    /**
     * 根据驾驶证号查询是否已经存在该司机也可用于查询司机名称
     *
     * @param license
     * @return
     */
    String selectIsNullByLicense(String license);

    /**
     * 根据司机驾驶证号获取司机rowId
     *
     * @param license
     * @return
     */
    String selectRowIdByLicense(String license);

    boolean deleteByIds(String[] ids);
}
